JavaFX হল একটি শক্তিশালী GUI ফ্রেমওয়ার্ক যা ডেস্কটপ অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। JavaFX এ বিভিন্ন ধরনের UI Components (ইউজার ইন্টারফেস উপাদান) রয়েছে যা আপনি আপনার অ্যাপ্লিকেশনে ব্যবহার করতে পারেন। এখানে কিছু গুরুত্বপূর্ণ UI কম্পোনেন্টের উদাহরণ দেওয়া হল:
একটি বাটন UI উপাদান যা ব্যবহারকারীকে ইন্টারঅ্যাক্ট করতে সক্ষম করে। আপনি একটি বাটনে ক্লিক করলে নির্দিষ্ট কোনো কাজ সম্পাদন করতে পারেন।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class ButtonExample extends Application {
@Override
public void start(Stage primaryStage) {
// বাটন তৈরি করা
Button btn = new Button("Click Me");
// বাটনে ক্লিক করলে একটি বার্তা প্রদর্শন করা
btn.setOnAction(event -> System.out.println("Button clicked!"));
// StackPane layout এ বাটন যোগ করা
StackPane root = new StackPane();
root.getChildren().add(btn);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের টাইটেল এবং Scene সেট করা
primaryStage.setTitle("Button Example");
primaryStage.setScene(scene);
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
একটি লেবেল হল একটি স্ট্যাটিক টেক্সট উপাদান যা ব্যবহারকারীকে কোনো তথ্য প্রদর্শন করতে সাহায্য করে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class LabelExample extends Application {
@Override
public void start(Stage primaryStage) {
// একটি লেবেল তৈরি করা
Label label = new Label("Hello, JavaFX!");
// StackPane layout এ লেবেল যোগ করা
StackPane root = new StackPane();
root.getChildren().add(label);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের টাইটেল এবং Scene সেট করা
primaryStage.setTitle("Label Example");
primaryStage.setScene(scene);
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
এটি একটি ইনপুট ফিল্ড যা ব্যবহারকারীদের টেক্সট ইনপুট দিতে সাহায্য করে। এটি সাধারণত নাম, ইমেইল অথবা অন্যান্য তথ্য ইনপুট নেওয়ার জন্য ব্যবহৃত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class TextFieldExample extends Application {
@Override
public void start(Stage primaryStage) {
// একটি টেক্সটফিল্ড তৈরি করা
TextField textField = new TextField();
textField.setPromptText("Enter your name");
// StackPane layout এ টেক্সটফিল্ড যোগ করা
StackPane root = new StackPane();
root.getChildren().add(textField);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের টাইটেল এবং Scene সেট করা
primaryStage.setTitle("TextField Example");
primaryStage.setScene(scene);
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
TextArea হল একটি মাল্টি-লাইন টেক্সট ইনপুট ফিল্ড যা বড় টেক্সট বা বার্তা ইনপুটের জন্য ব্যবহৃত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextArea;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class TextAreaExample extends Application {
@Override
public void start(Stage primaryStage) {
// একটি টেক্সটএ্রিয়া তৈরি করা
TextArea textArea = new TextArea();
textArea.setPromptText("Enter your message");
// StackPane layout এ টেক্সটএ্রিয়া যোগ করা
StackPane root = new StackPane();
root.getChildren().add(textArea);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের টাইটেল এবং Scene সেট করা
primaryStage.setTitle("TextArea Example");
primaryStage.setScene(scene);
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
CheckBox হল একটি ইন্টারেক্টিভ UI কম্পোনেন্ট যা ব্যবহারকারীকে একটি বা একাধিক বিকল্প নির্বাচন করতে দেয়। এটি সাধারণত ফর্মের চেকলিস্ট বা সিলেকশন বোর্ডে ব্যবহৃত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.CheckBox;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class CheckBoxExample extends Application {
@Override
public void start(Stage primaryStage) {
// একটি চেকবক্স তৈরি করা
CheckBox checkBox = new CheckBox("Accept Terms and Conditions");
// চেকবক্সে পরিবর্তন হলে তার স্ট্যাটাস দেখানো
checkBox.setOnAction(event -> {
if (checkBox.isSelected()) {
System.out.println("Terms accepted");
} else {
System.out.println("Terms not accepted");
}
});
// StackPane layout এ চেকবক্স যোগ করা
StackPane root = new StackPane();
root.getChildren().add(checkBox);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের টাইটেল এবং Scene সেট করা
primaryStage.setTitle("CheckBox Example");
primaryStage.setScene(scene);
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
RadioButton হল একটি UI উপাদান যা ব্যবহারকারীকে একাধিক বিকল্পের মধ্যে একটি নির্বাচন করতে দেয়। এটি সাধারণত গ্রুপে ব্যবহৃত হয় এবং শুধুমাত্র একটি বিকল্প নির্বাচিত থাকতে পারে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.RadioButton;
import javafx.scene.control.ToggleGroup;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class RadioButtonExample extends Application {
@Override
public void start(Stage primaryStage) {
// ToggleGroup তৈরি করা (একই গ্রুপে থাকা বাটনগুলির মধ্যে একটি বেছে নেওয়া যাবে)
ToggleGroup group = new ToggleGroup();
// রেডিও বাটন তৈরি করা
RadioButton rb1 = new RadioButton("Option 1");
rb1.setToggleGroup(group);
RadioButton rb2 = new RadioButton("Option 2");
rb2.setToggleGroup(group);
// একটি StackPane layout তৈরি এবং রেডিও বাটন যোগ করা
StackPane root = new StackPane();
root.getChildren().addAll(rb1, rb2);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(root, 300, 200);
// স্টেজের টাইটেল এবং Scene সেট করা
primaryStage.setTitle("RadioButton Example");
primaryStage.setScene(scene);
// স্টেজ প্রদর্শন করা
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
JavaFX একটি শক্তিশালী UI লাইব্রেরি যা ডেস্কটপ অ্যাপ্লিকেশন তৈরির জন্য বিভিন্ন ধরনের কন্ট্রোল এবং UI কম্পোনেন্ট সরবরাহ করে। উপরে দেওয়া উদাহরণগুলোতে Button, Label, TextField, TextArea, CheckBox, এবং RadioButton কন্ট্রোল ব্যবহার করে বিভিন্ন ধরনের ইন্টারঅ্যাকশন তৈরি করা হয়েছে। এই কম্পোনেন্টগুলো সহজেই কাস্টমাইজ করা যায় এবং JavaFX এর মাধ্যমে অত্যন্ত সুন্দর এবং ইন্টারেক্টিভ UI তৈরি করা সম্ভব।
Read more